#!/usr/bin/python
# -*- coding: utf-8 -*-

'''
4.士兵开枪
    需求：
    1）.士兵瑞恩有一把AK47
    2）.士兵可以开火(士兵开火扣动的是扳机)
    3）.枪 能够 发射子弹(把子弹发射出去)
    4）.枪 能够 装填子弹 --增加子弹的数量
'''

#定义一个类
class Person_shoot_gun(object):
    def __init__(self, gun_name):
        self.gun_name = gun_name
        self.cartridge = 50

    #定义一个开枪的函数
    def shoot_gun(self):
        print('一个士兵在练习打靶')
        a = input('瞄准了吗？要不要开枪?(yes:打开保险，扣动扳机/no:关闭保险，收好抢):')
        if a == 'yes' and self.cartridge >0:
            self.cartridge -= 1
            self.shoot_gun()
        elif a == 'no' or self.cartridge == 0:
            print('打靶结束')
        else:
            print('指令输入错误......')

    #定义一个装子弹的函数
    def add_bullet(self):
        if self.cartridge < 50:
            a = input('是不是要装子弹？（yes/no）')
            if a == 'yes':
                self.cartridge += 1
                self.add_bullet()
            elif a == 'no':
                print('不装子弹了')
            else:
                print('指令输入错误......')
        else:
            print('子弹还满着，不装了。')

    def __str__(self):
        return f'现在抢里面还有{self.cartridge}发子弹。'

if __name__ == '__main__':
    result = Person_shoot_gun('AK47')
    result.shoot_gun()
    result.add_bullet()
    print(result)